home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 090 / ad.arc / ADWS.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1983-10-30  |  9.1 KB  |  192 lines

  1. 20  ON ERROR GOTO 9000:ARR$=CHR$(17)+CHR$(196)+CHR$(217)
  2. 50  DIM F(20),FA$(20),W$(20),F$(20)
  3. 126  GOSUB 3000:GOTO 160
  4. 130  CLS:GOSUB 140:LOCATE 12,20:PRINT  "PLEASE WAIT, RETURNING TO MAIN MENU":RUN"ADMAIN.BAS"
  5. 133  CLS:GOSUB 140:LOCATE 12,20:PRINT  "PLEASE WAIT, RETURNING TO PRINT MENU":RUN"ADPRT.BAS"
  6. 140  LOCATE 25,26:COLOR 1,7,1:PRINT "INTEGRATED SOFTWARE SYSTEMS ";:COLOR 3,0:RETURN
  7. 155  CLS:COLOR 3,0:LOCATE  12,30:PRINT "QUIT?  <Y>es or <N>o?":COLOR 14,0:LOCATE 12,38:PRINT "Y":LOCATE 12,47:PRINT "N":COLOR 3,0
  8. 156  GOSUB 35020
  9. 157  Y$=INKEY$:IF Y$="" THEN 157 ELSE Y$=CHR$(ASC(Y$) AND &HDF)
  10. 158  IF Y$="N" THEN 210
  11. 159  IF Y$="Y" THEN CLS:LOCATE 12,30:PRINT "GOODBYE":SYSTEM ELSE 156
  12. 160  O5$=CHR$(218)+CHR$(196)+CHR$(191):O6$=CHR$(179)+" "+CHR$(179):O7$=CHR$(192)+CHR$(196)+CHR$(217)
  13. 170  O$=CHR$(219):O2$=CHR$(221):O1$="F KEYS:"+O$+O$+"F1:MAIN menu"+O2$+"F2:WS ADDRESS menu"+O2$+"F6:PRINT menu"+O2$+"F8:NAMES"+O2$+"F4:NOTES"
  14. 200  REM              PRINT
  15. 210  GOSUB 5010
  16. 220  X3$="FILE = ":X4$=SPACE$(15):X5$="FUNCTION = ":X1$="PRINT "
  17. 230  CLS:LOCATE 25,29:COLOR 1,7,1:PRINT "INTEGRATED SOFTWARE SYSTEMS";:COLOR 3,0:LOCATE 1,1
  18. 240  COLOR 10,0:LOCATE 1,1:PRINT TAB(9);"* WordStar MailMerge":
  19. 250  PRINT:COLOR 14,0
  20. 260  LOCATE 3,1:PRINT "Select DATA for <Variable Names>"
  21. 262  LOCATE 4,1:PRINT "KEY":COLOR 3,0:GOSUB 800
  22. 265  LOCATE 20,1:COLOR 0,7:PRINT "Hit any key to continue"
  23. 361  COLOR 3,0:LOCATE 15,40:PRINT "KEY  F1 = Return to MAIN menu"
  24. 362  COLOR 14,0:LOCATE 16,40:PRINT "     F2";:COLOR 3,0:PRINT " = Return to WS ADDRESS menu"
  25. 363  LOCATE 17,40:PRINT "     F6 = Return to PRINT menu"
  26. 364  LOCATE 18,40:PRINT "     F8 = KEYS used in NOTES"
  27. 365  LOCATE 19,40:PRINT "     F7 = List of names in Address Book"
  28. 366  LOCATE 20,40:PRINT "ALT F10 = QUIT"
  29. 367  GOSUB 840
  30. 369  LOCATE 1,67:PRINT "(C) 1983":LOCATE 2,62:PRINT "Date:  ";DATE$:LOCATE 3,62:PRINT "Time:  "
  31. 370  DEF SEG=0: POKE 1050, PEEK(1052)
  32. 371  Y9$=INKEY$:IF Y9$="" THEN LOCATE 3,69:PRINT TIME$:GOTO 371 ELSE 375
  33. 375  IF LEN(Y9$)=2 THEN 460
  34. 380  GOTO 500
  35. 460  IF ASC(RIGHT$(Y9$,1))=68 THEN 30000
  36. 470  IF ASC(RIGHT$(Y9$,1))=113 THEN 155 ELSE 240
  37. 500  J=1
  38. 505  LOCATE 1,1:PRINT SPACE$(79):PRINT SPACE$(79):PRINT SPACE$(79):GOSUB 820:FOR I=1 TO 8:LOCATE 12+I,39:PRINT SPACE$(40):NEXT:LOCATE 20,1:PRINT SPACE$(40)
  39. 515  LOCATE 3,25:PRINT "Select KEY for Variable Name #:  ";:LOCATE 3,58:COLOR 10,0:PRINT J
  40. 517  COLOR 14,0:LOCATE 4,1:PRINT "KEY":LOCATE 11,36:PRINT ARR$;" = EXIT"
  41. 518  COLOR 14,0:LOCATE 22,40:PRINT "KEY  F2 + ";ARR$;:COLOR 3,0:PRINT "  = Start Again  "
  42. 519  GOSUB 840
  43. 530  COLOR 10,0:LOCATE 17,1:PRINT "Select <KEY + ";ARR$;"> for Variable Name ";:COLOR 14,0:PRINT "#";J;":  ";:COLOR 14,0
  44. 531  INPUT " ",F$(J):IF LEN(F$(J))=0 THEN NJ=J-1:IF NJ=0 THEN GOSUB 35020:GOTO 500  ELSE GOTO 700
  45. 535  F$(J)=CHR$(ASC(F$(J)) AND &HDF):F(J)=ASC(F$(J))-64
  46. 540  IF F(J)>10 OR F(J)<=0 THEN J=J-1:GOSUB 35030:GOTO 550
  47. 545  IF F(J)=9 THEN LOCATE 17,1:COLOR 10,0:PRINT "Input MESSAGE for Variable Name ";:COLOR 14,0:PRINT "#";J;":";SPACE$(20):LOCATE 19,10:LINE INPUT "ENTER:  ", FA$(J):LOCATE 17,1:PRINT SPACE$(80):LOCATE 19,10:PRINT SPACE$(70)
  48. 550  COLOR 3,0:J=J+1:LOCATE 17,45:PRINT SPACE$(7):LOCATE 3,58:COLOR 14,0:PRINT J:COLOR 3,0:GOTO 530
  49. 700  LOCATE 2,1:FOR I=1 TO 2:PRINT SPACE$(79):NEXT:GOSUB 830:LOCATE 10,1:FOR I=1 TO 12:PRINT SPACE$(79):NEXT
  50. 720  LOCATE 10,1:COLOR 14,0:FOR I= 1 TO NJ:PRINT "Variable Name # ";I;" = ";F$(I); "   ";FA$(I):NEXT
  51. 725  PRINT :PRINT "ANY CORRECTIONS?  <Y>es or <N>o. "
  52. 740  Y$=INKEY$:IF Y$="" THEN 740 ELSE Y$=CHR$(ASC(Y$) AND &HDF)
  53. 745  IF Y$= "Y" THEN 760
  54. 746  IF Y$="N" THEN 1540 ELSE GOSUB 35030:GOTO 740
  55. 760  J=1:IF NJ>=11 THEN CLS:GOSUB 800:GOSUB 820:GOSUB 840:GOTO 765
  56. 763  LOCATE 2,1:FOR I=1 TO 2:PRINT SPACE$(79):NEXT:GOSUB 830:LOCATE 10,1:FOR I=1 TO 12:PRINT SPACE$(79):NEXT
  57. 765  LOCATE 3,25:PRINT "Select DATA for Variable Name  #:  "
  58. 767  LOCATE 12,32:COLOR 14,0:PRINT ARR$;" = no change"
  59. 768  LOCATE 22,40:PRINT "KEY  F2 + ";ARR$;:COLOR 3,0:PRINT "  = Start Again  "
  60. 770  FOR J= 1 TO NJ
  61. 771  COLOR 14,0:LOCATE 3,57:PRINT J:LOCATE 14,5:PRINT "FIELD # ";J;" = ";F$(J);"  ";FA$(J):LOCATE 16,5:PRINT "NEW <KEY + ";ARR$;">:  ";
  62. 772  INPUT " ", FF$:IF LEN(FF$)=0 THEN 780
  63. 773  F$(J)=CHR$(ASC(FF$) AND &HDF):FJ=ASC(F$(J))-64
  64. 774  IF FJ>10 OR FJ<=0 THEN J=J-1:GOSUB 35030:GOTO 780
  65. 776  F(J)=FJ:IF F(J)=9 THEN LOCATE 17,5:PRINT "Input MESSAGE for Variable Name #:  ";J:LOCATE 19,10:LINE INPUT "?", FA$(J)
  66. 778  IF F(J)<>9 THEN FA$(J)=""
  67. 780  LOCATE 16,20:PRINT SPACE$(8):COLOR 3,0:SP$=SPACE$(80):FOR K=1 TO 2:PRINT SP$:NEXT
  68. 785  NEXT
  69. 790  GOTO 700
  70. 800  COLOR 2,0:LOCATE 5,1:PRINT "A = First Name":LOCATE 5,40:PRINT "B = Last Name"
  71. 801  LOCATE 6,1:PRINT "C = Title of Courtesy & Last Name":LOCATE 6,40:PRINT "D = Title of Courtesy & Full Name"
  72. 802  LOCATE 7,1:PRINT "E = Title or Rank":LOCATE 7,40:PRINT "F = Company"
  73. 803  LOCATE 8,1:PRINT "G = Street Address":LOCATE 8,40:PRINT "H = City, State, Zipcode"
  74. 804  LOCATE 9,1:PRINT "I = Global Message (one line)":LOCATE 9,40:PRINT "J = IndiVidual Message (one line)":COLOR 10,0
  75. 805  LOCATE 5,1:PRINT "A":LOCATE 5,40:PRINT "B":LOCATE 6,1:PRINT "C":LOCATE 6,40:PRINT "D":LOCATE 7,1:PRINT "E":LOCATE 7,40:PRINT "F":LOCATE 8,1:PRINT "G":LOCATE 8,40:PRINT "H":LOCATE 9,1:PRINT "I":LOCATE 9,40:PRINT "J":COLOR 3,0:RETURN
  76. 820  LOCATE 25,29:COLOR 1,7,1:PRINT "INTEGRATED SOFTWARE SYSTEMS";
  77. 830  COLOR 14,0:LOCATE 1,30:PRINT "* WordStar MailMerge":COLOR 3,0:RETURN
  78. 840  LOCATE 23,5:PRINT "* WordStar and MailMerge are trademarks of MicroPro International Corp.":RETURN
  79. 1540  REM
  80. 1545  GOSUB 5000
  81. 1550  GOSUB 830
  82. 1560  PRINT :PRINT " CHOOSE ONE OF THE FOLLOWING":PRINT :COLOR 14,0
  83. 1570  PRINT "   ";CHR$(186);"     ";O5$:PRINT "   ";CHR$(186);"     ";O6$:PRINT "   ";CHR$(25);"     ";O7$:COLOR 3,0
  84. 1580  PRINT :PRINT TAB(4);"N)OTE Code":PRINT TAB(4);"Z)IPCODE"
  85. 1590  COLOR 14,0:LOCATE 9,4:PRINT "N":LOCATE 10,4:PRINT "Z"
  86. 1600  COLOR 31,0:LOCATE 6,11:PRINT "?":COLOR 3,0
  87. 1602  COLOR 14,0:LOCATE 22,40:PRINT "KEY  F2";:COLOR 3,0:PRINT " = Return to WS ADDRESS LIST"
  88. 1605  DEF SEG=0: POKE 1050, PEEK(1052)
  89. 1610  Y$=INKEY$: IF Y$="" THEN 1610 ELSE Y$=CHR$(ASC(Y$) AND &HDF)
  90. 1620  IF Y$="N" THEN 1800
  91. 1630  IF Y$="Z" THEN 1660 ELSE 1605
  92. 1660  GOSUB 5000
  93. 1670  PRINT "PRINT ... ZIPCODE":COLOR 12,0:LOCATE 5,32:PRINT "ENTER:  ZIPCODE & ";ARR$:LOCATE 6,8:COLOR 3,0:PRINT "Any number of digits and always start from the left most digit)"
  94. 1680  LOCATE 7,39:PRINT "OR":COLOR 12,0:LOCATE 8,32:PRINT "'!' to print all"
  95. 1690  COLOR 3,0:LOCATE 9,39:PRINT "OR":LOCATE 10,31:PRINT ARR$;"  return to MENU":LOCATE 15,25:COLOR 14,0:INPUT "ZIPCode ... ",Z$:KK=7:X2$=" ZIPCODE "
  96. 1700  GOTO 1840
  97. 1800  GOSUB 5000
  98. 1810  PRINT "PRINT ... NOTE (Code)":COLOR 12,0:LOCATE 5,30:PRINT "ENTER:  NOTE (Code) & ";ARR$:COLOR 3,0:LOCATE 6,4:PRINT "(Any number of characters and always start from the left most character)"
  99. 1820  LOCATE 7,39:PRINT "OR":COLOR 12,0:LOCATE 8,32:PRINT "<!> to print all"
  100. 1830  COLOR 3,0:LOCATE 9,39:PRINT "OR":LOCATE 10,28:PRINT ARR$;"  return to MENU":LOCATE 15,25:COLOR 14,0:INPUT "NOTE (Code) ... ",Z$:KK=9:X2$=" NOTES"
  101. 1840  MM=LEN(Z$):IF MM=0 THEN 1540
  102. 1845  X3$="FILE = ":X4$=SPACE$(15):X5$="FUNCTION = ":X1$="PRINT "
  103. 1850  CLS:LOCATE 6,18:COLOR 12,0:PRINT "Enter complete FILESPEC.DAT for WordStar MailMerge":COLOR 3,0:LOCATE 8,39:PRINT "OR":COLOR 12,0:LOCATE 10,30:PRINT ARR$;" for default file":COLOR 3,0:LOCATE 12,27:PRINT "[EXAMPLE:  B:ZIP-FIL.WS]
  104. 1851  FWP$=FIL$+".WS":LOCATE 14,30:PRINT "Default = ";:COLOR 12,0:PRINT FWP$
  105. 1852  LOCATE 18,27:COLOR 14,0:GOSUB 35000:INPUT "FILESPEC.DAT ... ",FILET$
  106. 1853  IF LEN(FILET$)=0 THEN FILET$=FWP$
  107. 1854  OPEN FILET$ FOR INPUT AS #3:GOTO 2500
  108. 1856  CLOSE #3:OPEN FILET$ FOR OUTPUT AS #3
  109. 1857  GOSUB 5000
  110. 1858  LOCATE 12,36:COLOR 16,7:PRINT "WORKING":COLOR 14,0:LOCATE 20,22:PRINT "KEY F2";:COLOR 3,0:PRINT " = Return to WS ADDRESS menu"
  111. 1859  GET #4,NN+1:I=VAL(V$(16)):IK=0:GOSUB 5010
  112. 1860  IF IK<NN THEN IK=IK+1
  113. 1865  IF FRE(1)<1000 THEN CHAIN "adws",1870,ALL
  114. 1870  GET #4,I
  115. 1875  IF Z$="!" THEN 1982
  116. 1880  IF Z$<>MID$(V$(KK),5,MM) THEN  2230
  117. 1982  FM=1
  118. 1985  FOR K=1 TO NJ
  119. 1990  FOR J= 1 TO 7 :A(J)=VAL(V$(J)):NEXT
  120. 1995  A(8)=VAL(V$(13)):A(9)=VAL(V$(12))
  121. 1996  W$(1)=MID$(V$(1),5,A(1))+" ":W$(2)=MID$(V$(2),5,A(2)):W$(3)=MID$(V$(13),5,A(8))+W$(1)+W$(2):WN=INSTR(1,W$(1)," "):W$(4)=LEFT$(W$(1),WN-1)
  122. 1998  ON F(K) GOTO 2000,2010,2020,2030,2040,2050,2060,2070,2100,2110
  123. 2000  WRITE #3, W$(4):GOTO 2200
  124. 2010  WRITE #3, W$(2):GOTO 2200
  125. 2020  WRITE #3, MID$(V$(13),5,A(8))+W$(2):GOTO 2200
  126. 2030  WRITE #3, W$(3):GOTO 2200
  127. 2040  WRITE #3, MID$(V$(12),5,A(9)):GOTO 2200
  128. 2050  WRITE #3, MID$(V$(3),5,A(3)):GOTO 2200
  129. 2060  WRITE #3, MID$(V$(4),5,A(4)):GOTO 2200
  130. 2070  WRITE #3, MID$(V$(5),5,A(5))+", "+MID$(V$(6),5,A(6))+"  "+MID$(V$(7),5,A(7)):GOTO 2200
  131. 2100  WRITE #3, FA$(K):GOTO 2200
  132. 2110  IF FM=1 THEN GOSUB 5000 ELSE LOCATE 10,5:PRINT SPACE$(69)
  133. 2165  LOCATE 5,5:PRINT W$(3)
  134. 2170  LOCATE 10,5:PRINT "INPUT MESSAGE #";FM;" FOR ";W$(4);":  ";:INPUT " ",FIA$:FM=FM+1
  135. 2175  WRITE #3, FIA$
  136. 2200  NEXT
  137. 2210  PRINT #3,
  138. 2230  IF IK>=NN THEN 2245 ELSE I=VAL(V$(14)):GOTO 1860
  139. 2245  CLS:LOCATE 12,38:COLOR 16,7:PRINT " DONE ":COLOR 0,7:GOSUB 35000:
  140. 2246  LOCATE 20,29:PRINT "Hit any key to continue":COLOR 3,0
  141. 2247  Y$=INKEY$:IF Y$="" THEN 2247
  142. 2250  GOTO 200
  143. 2500  DEF SEG=0: POKE 1050, PEEK(1052)
  144. 2510  COLOR 11,0:LOCATE 18,25:PRINT "Confirm Overwrite of ";:COLOR 12,0:PRINT FILET$:COLOR 3,0:LOCATE 20,35:PRINT "<Y> or <N>":COLOR 14,0:LOCATE 20,36:PRINT "Y":LOCATE 20,43:PRINT "N":COLOR 3,0
  145. 2515  GOSUB 35020
  146. 2520  Y$=INKEY$:IF Y$="" THEN 2520 ELSE Y$=CHR$(ASC(Y$) AND &HDF)
  147. 2530  IF Y$="Y" THEN 1856
  148. 2540  IF Y$="N" THEN CLOSE #3:GOTO 1850 ELSE 2515
  149. 3000  OPEN "TEMPOR.TEM" FOR INPUT AS #1
  150. 3005  INPUT #1, FILE$,FILM$,FIL$:CLOSE #1
  151. 3010  OPEN FILM$ FOR INPUT AS #2
  152. 3015  INPUT #2,Y$,NRED,NN,FILE$,FIL$,PT$,SNN$,LP1,LP$,T1$,SND$,TN,F$:CLOSE #2:CLOSE #5
  153. 3020  DIM DQ$(12),A(14),V$(16):FOR I= 1 TO 12:READ DQ$(I):NEXT
  154. 3030  DATA JANUARY, FEBRUARY,MARCH,APRIL,MAY,JUNE,JULY,AUGUST,SEPTEMBER,OCTOBER,NOVEMBER,DECEMBER
  155. 3040  OPEN FILE$ AS #4 LEN = 356
  156. 3050  FIELD #4, 19 AS V$(1), 19 AS V$(2), 18 AS V$(13), 34 AS V$(12), 34 AS V$(3), 34 AS V$(4), 19 AS V$(5), 14 AS V$(6), 16 AS V$(7), 12 AS V$(8), 84 AS V$(9), 19 AS V$(10), 19 AS V$(11), 5 AS V$(14), 5 AS V$(15), 5 AS V$(16)
  157. 3060  IF PT$="I" THEN OPEN "LPT1:" FOR OUTPUT AS #5:GOTO 3080
  158. 3070  OPEN "LPT2:" FOR OUTPUT AS #5
  159. 3080  FILN$=FIL$+"NTE"
  160. 3090  RETURN
  161. 4000  REM
  162. 4010  OPEN FILN$ FOR INPUT AS #2
  163. 4030  FOR I= 1 TO 20:INPUT #2, NKEY$(I),NOTE$(I):IF NKEY$(I)=CHR$(15) THEN 4035 ELSE NEXT
  164. 4035  NP=I-1:CLOSE #2
  165. 4040  GOSUB 5000
  166. 4050  LOCATE 1,1:PRINT "NOTES:  KEYS":LOCATE 1,30:COLOR 14,0:PRINT "KEYS       ";:COLOR 3,0:PRINT " DESCRIPTION":FOR I=1 TO NP:COLOR 14,0:LOCATE 4+I,30:PRINT NKEY$(I);:COLOR 3,0:LOCATE ,40:PRINT " = ";NOTE$(I):NEXT
  167. 4060  LOCATE 20,28:COLOR 0,7:PRINT "HIT ANY KEY TO CONTINUE":COLOR 3,0
  168. 4065  Y$=INKEY$:IF Y$="" THEN 4065 ELSE RETURN 160
  169. 5000  CLS:LOCATE 25,1:COLOR 0,7,1:PRINT O1$;:COLOR 3,0:LOCATE 1,1:RETURN
  170. 5010  ON KEY(1) GOSUB 130:ON KEY(6) GOSUB 133:KEY(6) ON:KEY(1) ON:ON KEY(8) GOSUB 4000:KEY(8) ON:ON KEY(7) GOSUB 20000:KEY(7) ON:ON KEY(2) GOSUB 210:KEY(2) ON:RETURN
  171. 9000  IF ERL= 1854 THEN 1856
  172. 9010  IF ERR = 27 THEN CLS:LOCATE 25,10:COLOR 1,7,1:PRINT "FILE = ";FILE$;SPACE$(10);"PRINTER ERROR ":COLOR 7,1:LOCATE 1,1
  173. 9030  IF ERR = 27 THEN PRINT "CHECK THE PRINTER":FOR I= 1 TO 500:NEXT I:RESUME 230
  174. 9040  IF ERR = 53 THEN CLS:LOCATE 10,15:PRINT "File containing KEYS used in NOTES does not exist.":LOCATE 12,22:PRINT "Return to EDIT program to create file." :LOCATE 18,30:PRINT "HIT ANY KEY TO CONTINUE":GOSUB 35030:Y$=INPUT$(1):RESUME 160
  175. 9050  IF ERR = 61 THEN LOCATE 10,1:PRINT "DISK FULL.  LOAD FORMATTED DISK AND TYPE <CONT> AND RETURN ":COLOR 14,0:LOCATE 10,43:PRINT "CONT":BEEP:COLOR 3,0:STOP
  176. 9060  RESUME 160
  177. 20000  A$="ADWS":CHAIN "ADNAME",20000,ALL
  178. 20210  Y$=INKEY$:IF Y$="" THEN 20210 ELSE GOSUB 5000:RETURN
  179. 30000  CLS:LOCATE 25,25:COLOR 1,7,1:PRINT "INTEGRATED SOFTWARE SYSTEMS";:COLOR 3,0:LOCATE 1,1
  180. 30010  OPEN "ADMAIL.HLP" AS #2 LEN=78
  181. 30020  FIELD #2, 78 AS A$
  182. 30030  I=1:M=1
  183. 30040  GET #2,I
  184. 30090  IF LEFT$(A$,1) <> CHR$(15) THEN PRINT A$ :I=I+1:GOTO 30040 ELSE 30130
  185. 30130  LOCATE 24,27:COLOR 0,7:PRINT "HIT ANY KEY TO CONTINUE";:COLOR 3,0:GOSUB 35030
  186. 30140  Y$=INKEY$:IF Y$="" THEN 30140
  187. 30150  CLOSE #2:GOTO 200
  188. 35000  IF SND$="N" THEN RETURN ELSE FOR SS%=1 TO 4:SOUND 500*SS%,2:NEXT:RETURN
  189. 35010  IF SND$="N" THEN RETURN ELSE FOR SS%=1 TO 3:SOUND 1000*SS%,1:NEXT:FOR SS%= 3 TO 1:SOUND 1000*SS%,1:NEXT:RETURN
  190. 35020  IF SND$="N" THEN RETURN ELSE BEEP:RETURN
  191. 35030  IF SND$="N" THEN RETURN ELSE SOUND 750,2:SOUND 30000,2:SOUND 750,2:RETURN
  192.